Cellular Automata and GPGPU: An Application to Lava Flow Modeling
نویسندگان
چکیده
This paper presents an efficient implementation of the SCIARA Cellular Automata computational model for simulating lava flows using the Compute Unified Device Architecture (CUDA) interface developed by NVIDIA and carried out on Graphical Processing Units (GPU). GPUs are specifically designated for efficiently processing graphic data sets. However, they are also recently being exploited for achieving excellent computational results for applications non-directly connected with Computer Graphics. The authors show an implementation of SCIARA and present results referred to a Tesla GPU computing processor, a NVIDIA device specifically designed for High Performance Computing, and a Geforce GT 330M commodity graphic card. Their carried out experiments show that significant performance improvements are achieved, over a factor of 100, depending on the problem size and type of performed memory optimization. Experiments have confirmed the effectiveness and validity of adopting graphics hardware as an alternative to expensive hardware solutions, such as cluster or multi-core machines, for the implementation of Cellular Automata models. DOI: 10.4018/jghpc.2012070102 International Journal of Grid and High Performance Computing, 4(3), 30-47, July-September 2012 31 Copyright © 2012, IGI Global. Copying or distributing in print or electronic forms without written permission of IGI Global is prohibited. as Beowulf clusters), this can be accomplished by means of MPI Message Passing Interface (Snir et al., 1995). On the contrary, in the case of a multicore architecture (such as Intel’s Core i7 processor), a shared-memory or multithread implementation based on OpenMP (Chapman et al., 2007) can result in a better and more efficient solution. In recent years however, parallel computing has undergone a significant revolution with the introduction of GPGPU technology (General-Purpose computing on Graphics Processing Units), a technique that uses the graphics card processor (the GPU) for purposes other than graphics. Currently, GPUs outperform CPUs on floating point performance and memory bandwidth, both by a factor of roughly 100. As a confirmation of the increasing trend in the power of GPUs, leading companies such as Intel have already integrated GPUs into their latest products to better exploit the capabilities of their devices, such as in some releases of the Core i5 and Core i7 processing units. Although the incredible processing power of graphic processors may be used for general purpose computations, a GPU may not be suitable for every computational problem: only a parallel program that results optimized for GPU architectures can fully take advantage of the performance of GPUs. In fact, the performance of a GPGPU program that does not sufficiently exploit a GPU’s capabilities can often be worse than that of a simple sequential one running on a CPU, such as when data transfer from main memory to video memory results crucial. Nevertheless, GPU applications to the important field of Computational Fluid Dynamics (CFD) are increasing both for quantity and quality among the Scientific Community (e.g., Tolke & Krafczyka, 2008; Zuo et al., 2010). Among the different methodologies used for modelling geological processes, such as numerical analysis, high order difference approximations and finite differences, Cellular Automata (CA) (von Neumann, 1966) have proven to be particularly suitable when the behaviour of the system to be modelled can be described in terms of local interactions. Originally introduced by von Neumann in the 1950s to study self-reproduction issues, CA are discrete computational models widely utilized for modeling and simulating complex systems. Well known examples are the Lattice Gas Automata and Lattice Boltzmann methods (Succi, 2004) which are particularly suitable for modelling fluid dynamics at a microscopic level of description. However, many complex phenomena (e.g., landslides or lava flows) are difficult to be modeled at such scale, as they generally evolve on large areas, thus needing a macroscopic level of description. Moreover, since it may be difficult to model these phenomena through standard approaches such as differential equations (cf. McBirney & Murase, 1984, for the case of lava flows), Macroscopic Cellular Automata (MCA) (Di Gregorio and Serra, 1999) can represent a valid alternative. Several successful attempts have been carried out regarding solutions for parallelizing MCA simulation models. Among others, CAMELot (Di Gregorio et al., 1997) and libAuToti (Spingola et al., 2008) represent valid solutions for implementing and automatically parallelizing MCA models on distributed memory machines while for shared memory architectures, some effective OpenMP parallelizations have been implemented for CA-like models, such as for fire spread simulation (Innocenti et al., 2009), Lattice Boltzmann models (Heuvelineet al., 2009) or lava flow modelling (Oliverio et al., 2011). However, only some examples of GPGPU applications for CA-like models do exist (e.g., Fan et al., 2004; Tolke, 2008) and to our knowledge, none regarding the MCA approach. This paper presents a first implementation, in GPGPU environments, of a well-known, reliable and efficient MCA model widely adopted for lava flow risk assessment (e.g., Crisci et al., 2010), namely the SCIARA lava flow model. Tests performed on two types of GPU hardware, a Geforce GT 330M low cost commodity graphic card and a Tesla C1060 computing processor, have shown the validity of this kind of approach. In the following sections, after a brief description of the basic version of the SCIARA MCA model for lava flows, an overview of GPGPU paradigm together with the CUDA framework 16 more pages are available in the full version of this document, which may be purchased using the "Add to Cart" button on the product's webpage: www.igi-global.com/article/cellular-automatagpgpu/69804?camid=4v1 This title is available in InfoSci-Journals, InfoSci-Journal Disciplines Computer Science, Security, and Information Technology. Recommend this product to your librarian: www.igi-global.com/e-resources/libraryrecommendation/?id=2
منابع مشابه
Modeling of the 2001 lava flow at Etna volcano by a Cellular Automata approach
The 2D Cellular Automata model, MAGFLOW, simulates lava flows and an algorithm based on the Monte Carlo approach solves the anisotropic flow direction problem. The model was applied to reproduce a lava flow formed during the 2001 Etna eruption. This eruption provided the opportunity to verify the ability of MAGFLOW to simulate the path of lava flows which was made possible due to the availabili...
متن کاملModeling Complex Natural Phenomena with the libAuToti Cellular Automata Library: An example of Application to Lava Flows Simulation
Cellular Automata, a computational science branch used for the modeling and simulation of complex systems, are parallel computing models which are continuously gaining attention from the Scientific Community for their potentiality and efficiency. This work presents the application of libAuToti, an open-source parallel library for implementing models based on the Cellular Automata approach, on t...
متن کاملComplex Systems Modeling with Cellular Automata and Genetic Algorithms: An Application to Lava Flows
Cellular Automata are parallel computational models which are capable to give rise to heterogeneous emergent behaviors notwithstanding simple local rules of evolution. In this review paper, a methodology for modeling complex natural systems through Macroscopic Cellular Automata is presented and applied to lava flow simulation. In particular, the 2001 Mt. Etna volcano Nicolosi (Italy) case study...
متن کاملLava flows impact prediction at Mount Etna by Cellular Automata
Millions of people live either on or in the surrounding areas of about six hundred worldwide volcanoes, which are known to be capable of renewed activity. The individuation of those areas that are more likely to be interested by new events is of fundamental relevance for mitigating possible consequences, both in terms of loss of human lives and material properties. Here we show a new methodolog...
متن کاملAccelerating Lava Flows Simulations with GPGPU and OpenCL
The introduction of the GPU (graphics processing units) has marked a revolution in the field of Parallel Computing allowing to achieve computational performance unimaginable until a few years ago. Widely adopted in the Scientific Computing Field, this hardware has proven to be extremely reliable and suitable to simulate Cellular Automata (CA) models for modeling complex systems whose evolution ...
متن کاملذخیره در منابع من
با ذخیره ی این منبع در منابع من، دسترسی به آن را برای استفاده های بعدی آسان تر کنید
عنوان ژورنال:
- IJGHPC
دوره 4 شماره
صفحات -
تاریخ انتشار 2012